home *** CD-ROM | disk | FTP | other *** search
/ Disc to the Future 2 / Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin / PC / MISCBAS / BLKJK.ASC < prev    next >
Text File  |  1987-01-11  |  6KB  |  235 lines

  1.  
  2.  
  3. 1000 DIM C(52),V$(10)
  4. 1010 INPUT "INSTRUCTIONS ";I$
  5. 1030 IF LEFT$(I$,1)="Y" THEN 3310
  6. 1040 C=0
  7. 1050 FOR K=0 TO 3
  8. 1060 FOR J=1 TO 10
  9. 1070 C(J+10*K)=J
  10. 1080 NEXTJ:NEXT K
  11. 1100 FOR J=41 TO 52:C(J)=10:NEXT J
  12. 1130 V$(1)=" A"
  13. 1140 V$(2)=" 2"
  14. 1150 V$(3)=" 3"
  15. 1160 V$(4)=" 4"
  16. 1170 V$(5)=" 5"
  17. 1180 V$(6)=" 6"
  18. 1190 V$(7)=" 7"
  19. 1200 V$(8)=" 8"
  20. 1210 V$(9)=" 9"
  21. 1220 V$(10)="10"
  22. 1230 L=40
  23. 1250 IF L<40 THEN 1340
  24. 1260 FOR J=1 TO 52
  25. 1270 Z=C(J)
  26. 1280 R=INT(RND(J)*52+1)
  27. 1290 C(J)=C(R)
  28. 1300 C(R)=Z
  29. 1310 NEXT J
  30. 1320 L=1
  31. 1330 PRINT "NEW DECK":PRINT
  32. 1340 T=0
  33. 1350 T1=0
  34. 1360 S=0
  35. 1370 S1=0
  36. 1380 INPUT"BET = ";B
  37. 1400 IF B=0 THEN 1260
  38. 1410 IF B>500 THEN 1380
  39. 1420 IF B<1 THEN 1380
  40. 1425 IF B<> INT(B) THEN 1380
  41. 1430 GOSUB 2940
  42. 1440 GOSUB 3090
  43. 1450 PRINT "    ";V$(C(L-1))
  44. 1460 GOSUB 2940 
  45. 1470 GOSUB 3090
  46. 1480 H=C(L-1)
  47. 1490 IF C(L-3)=1 THEN 2820
  48. 1500 IF T=21 THEN 2690
  49. 1510 IF T1=21 THEN 2770
  50. 1520 INPUT D$
  51. 1530 IF LEFT$(D$,1)="G" THEN 2400
  52. 1540 IF LEFT$(D$,1)="D" THEN 2370
  53. 1550 IF LEFT$(D$,1)="H" THEN 2270
  54. 1560 IF LEFT$(D$,1)="S" THEN 1590
  55. 1570 PRINT"    RETYPE: ";
  56. 1580 GOTO 1520
  57. 1590 IF C(L-2)<>C(L-4) THEN 1570
  58. 1600 PRINT"FIRST HAND"
  59. 1610 B1=B
  60. 1620 PRINT V$(C(L-2))
  61. 1630 X=C(L-2)
  62. 1640 T1=X
  63. 1650 GOSUB 2940
  64. 1660 IF X<>1 THEN 1690
  65. 1670 T1=T1+10
  66. 1680 GOTO 1900
  67. 1690 INPUT D1$
  68. 1700 IF LEFT$(D1$,1)="G" THEN 1900
  69. 1710 IF LEFT$(D1$,1)="D" THEN 1870
  70. 1720 IF LEFT$(D1$,1)="H" THEN 1750
  71. 1730 PRINT"    RETYPE: ";:GOTO 1690
  72. 1750 GOSUB 2940
  73. 1760 IF T1>0 THEN 1820
  74. 1770 X1=0
  75. 1780 C=C-B1
  76. 1790 B1=0
  77. 1800 PRINT"BUST"
  78. 1810 GOTO 1920
  79. 1820 INPUT D1$
  80. 1830 IF LEFT$(D1$,1)="G" THEN 1900
  81. 1840 IF LEFT$(D1$,1)="H" THEN 1750
  82. 1850 PRINT"    RETYPE: ";:GOTO 1820
  83. 1870 B1=2*B
  84. 1880 GOSUB 2940
  85. 1890 IF T1=0 THEN 1770
  86. 1900 PRINT:PRINT T1
  87. 1910 X1=T1
  88. 1920 PRINT"SECOND HAND"
  89. 1930 B2=B
  90. 1940 PRINTV$(X)
  91. 1950 T1=X
  92. 1960 GOSUB 2940
  93. 1970 IFX<>1 THEN 2000
  94. 1980 T1=T1+10
  95. 1990 GOTO 2230
  96. 2000 INPUT D1$
  97. 2010 IF LEFT$(D1$,1)="G"THEN 2230
  98. 2020 IF LEFT$(D1$,1)="D" THEN 2200
  99. 2030 IF LEFT$(D1$,1)="H" THEN 2060
  100. 2040 PRINT "    RETYPE: ";:GOTO 2000
  101. 2060 GOSUB 2940
  102. 2070 IF T1>0 THEN 2150
  103. 2080 X2=0
  104. 2090 C=C-B2
  105. 2100 B2=0
  106. 2110 PRINT"BUST";
  107. 2120 IF X1>0 THEN 2410
  108. 2130 PRINT "    ";V$(H)
  109. 2140 GOTO 2510
  110. 2150 INPUT D1$
  111. 2160 IF LEFT$(D1$,1)="G" THEN 2230
  112. 2170 IF LEFT$(D1$,1)="H"THEN 2060
  113. 2180 PRINT "    RETYPE: ";:GOTO 2150
  114. 2190 B2=2*B
  115. 2200 GOSUB 2940
  116. 2210 IF T1=0 THEN 2080
  117. 2230 PRINT:PRINTT1
  118. 2240 B=B1+B2
  119. 2250 X2=T1
  120. 2260 GOTO 2410
  121. 2270 GOSUB 2940
  122. 2280 IF T1>0 THEN 2320
  123. 2290 PRINT"BUST";
  124. 2300 PRINT"    ";V$(H)
  125. 2310 GOTO 2560
  126. 2320 INPUT D$
  127. 2330 IF LEFT$(D$,1)="G" THEN 2400
  128. 2340 IF LEFT$(D$,1)="H" THEN 2270
  129. 2350 PRINT "    RETYPE: ";:GOTO 2320
  130. 2370 B=2*B
  131. 2380 GOSUB 2940
  132. 2390 IF T1=0 THEN 2290
  133. 2400 PRINT:PRINTT1;
  134. 2410 PRINT"      ";V$(H);
  135. 2420 GOTO 2450
  136. 2430 GOSUB 3090
  137. 2440 PRINT"  ";V$(C(L-1));
  138. 2450 IF T<17 THEN 2430
  139. 2460 IF T>21 THEN 2490
  140. 2470 PRINT":";T
  141. 2480 GOTO 2530
  142. 2490 PRINT": BUST"
  143. 2500 C=C+B
  144. 2510 PRINT"YOU HAVE $";C
  145. 2520 GOTO 1250
  146. 2530 IF LEFT$(D$,1)="S" THEN 2580
  147. 2540 IF T1>T THEN 2500
  148. 2550 IF T1=T THEN 2510
  149. 2560 B=-B
  150. 2570 GOTO 2500
  151. 2580 IF T>X1 THEN 2670
  152. 2590 IF T=X1 THEN 2610
  153. 2600 C=C+B1
  154. 2610 IF T>X2 THEN 2650
  155. 2620 IF T=X2 THEN 2510
  156. 2630 C=C+B2
  157. 2640 GOTO 2510
  158. 2650 C=C-B2
  159. 2660 GOTO 2510
  160. 2670 C=C-B1
  161. 2680 GOTO 2610
  162. 2690 IF T1=21 THEN 2740
  163. 2700 C=C-B
  164. 2710 PRINT"    ";V$(H);
  165. 2720 PRINT"  BLACKJACK"
  166. 2730 GOTO 2510
  167. 2740 PRINT"BLACKJACK"
  168. 2750 PRINT "    ";
  169. 2760 GOTO 2710
  170. 2770 PRINT"BLACKJACK"
  171. 2780 PRINT"        ";V$(H);
  172. 2790 PRINT
  173. 2800 C=C+1.5*B
  174. 2810 GOTO 2510
  175. 2820 INPUT"      INSURANCE ";I$
  176. 2840 IF LEFT$(I$,1)="Y" THEN 2870
  177. 2850 PRINT "    ";
  178. 2860 GOTO 1500
  179. 2870 IF T=21 THEN 2900
  180. 2880 C=C-.5*B
  181. 2890 GOTO 2850
  182. 2900 PRINT "        10";
  183. 2910 IF T1<>21 THEN 2720
  184. 2920 C=C+B
  185. 2930 GOTO 2720
  186. 2940 IF T1>10 THEN 2980
  187. 2950 IF C(L)<>1 THEN 2980
  188. 2960 T1=T1+10
  189. 2970 S1=1
  190. 2980 T1=T1+C(L)
  191. 2990 PRINT V$(C(L));"  ";
  192. 3000 L=L+1
  193. 3010 IF T1<=21 THEN 3080
  194. 3020 IF S1=0 THEN 3060
  195. 3030 T1=T1-10
  196. 3040 S1=0
  197. 3050 GOTO 3080
  198. 3060 T1=0
  199. 3070 PRINT
  200. 3080 RETURN
  201. 3090 IF T>10 THEN 3130
  202. 3100 IF C(L)<>1 THEN 3130
  203. 3110 T=T+10
  204. 3120 S=1
  205. 3130 T=T+C(L)
  206. 3140 L=L+1
  207. 3150 IF T<=21 THEN 3190
  208. 3160 IF S=0 THEN 3190
  209. 3170 T=T-10
  210. 3180 S=0
  211. 3190 RETURN
  212. 3310 PRINT"THIS BLACKJACK PROGRAM ENABLES THE OPERATOR TO PLAY HEAD-"
  213. 3320 PRINT"TO-HEAD WITH THE COMPUTER, SIMULATING THE EXACT RULES AS"
  214. 3330 PRINT"THOSE ON THE LAS VAGES STRIP.  THE CARDS ARE DEALT FROM ONE"
  215. 3340 PRINT"52-CARD DECK UNTIL A HAND STARTS WITH LESS THAN 12 CARDS"
  216. 3350 PRINT"REMAINING IN WHICH CASE IT RESHUFFLES.  THE DEALER MUST HIT"
  217. 3360 PRINT"THROUGH A TOTAL OF 16 AND STAND ON ALL TOTALS OF 17 AND ABOVE"
  218. 3365 INPUT"TYPE A NUMBER THEN (RETURN) TO GO ON";W9
  219. 3370 PRINT:PRINT"THE INSURANCE BET IS OFFERED AT HALF THE PLAYERS BET WHEN"
  220. 3380 PRINT"THE DEALER'S UP-CARD IS AN ACE."
  221. 3390 PRINT"YOU MAY DOUBLE-DOWN ON ANY TWO CARDS, AND RECIEVE ONE MORE"
  222. 3395 PRINT"CARD WHILE THE ORIGINAL BET IS DOUBLED"
  223. 3400 PRINT"YOU MAY SPLIT ANY HAND BUT RESPLITTING IS NOT ALLOWED."
  224. 3410 PRINT"ALSO, ONLY ONE CARD IS DELT ON EACH OF A PAIR OF ACES."
  225. 3415 PRINT"YOUR CARDS APPEAR IN THE FAR LEFT COLUMN; THE DEALER ON THE"
  226. 3420 PRINT"FAR RIGHT.  "
  227. 3430 PRINT" THE COMMANDS ARE AS FOLLOWS:"
  228. 3440 PRINT"      HIT (DRAW ANOTHER CARD)"
  229. 3450 PRINT"      GOOD (STAND ON CURRENT TOTAL)"
  230. 3460 PRINT"      DOUBLE (DOUBLE YOUR BET AND DRAW ONE CARD)"
  231. 3470 PRINT"      SPLIT (FORM TWO HANDS FROM A PAIR WITH THE ORIGINAL"
  232. 3480 PRINT"             BET ON EACH HAND)"
  233. 3490 PRINT:PRINT"COMMANDS MAY BE TYPED IN AS THE FIRST LETTER":PRINT"GOOD LUCK"
  234. 3500 GOTO 1040
  235.